package org.jeecg.modules.system.announcement.entity;

import java.io.Serializable;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.jeecg.common.aspect.annotation.Dict;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: 消息管理
 * @Author: 月月鸟
 * @Date:   2021-06-15
 * @Version: V1.0
 */
@Data
@TableName("bike_announcement")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="bike_announcement对象", description="消息管理")
public class BikeAnnouncement implements Serializable {
    private static final long serialVersionUID = 1L;

	/**id*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "id")
    private java.lang.String id;
	/**标题*/
	@Excel(name = "标题", width = 15)
    @ApiModelProperty(value = "标题")
    private java.lang.String titile;
	/**描述  系统消息时，为上报故障，问题反馈，问题诉求管理的ID*/
    @Excel(name = "描述", width = 15)
    @ApiModelProperty(value = "描述")
	private String description;
	/**内容*/
	@Excel(name = "新闻概述", width = 15)
    @ApiModelProperty(value = "内容")
    private java.lang.String msgContent;
	/**开始时间*/
	@Excel(name = "开始时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "开始时间")
    private java.util.Date startTime;
	/**结束时间*/
	@Excel(name = "结束时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "结束时间")
    private java.util.Date endTime;
	/**消息类型（1:通知公告，2:系统消息，3:服务通知，4骑行首页公告信息，5:主页新闻，, 6 运维公告，7网点滚屏公告） 系统消息 和 服务通知存 已读未读表*/
	@Excel(name = "消息类型（1:通知公告，2:系统消息，3:服务通知，4骑行首页公告信息，5:主页新闻）", width = 15 , dicCode = "msg_category")
    @ApiModelProperty(value = "消息类型（1:通知公告，2:系统消息，3:服务通知，4骑行首页公告信息，5:主页新闻 , 6 运维公告，7网点滚屏公告")
    @Dict(dicCode = "msg_category")
    private java.lang.String msgCategory;

	/**发布状态（0未发布，1已发布）*/
	@Excel(name = "发布状态（0未发布，1已发布）", width = 15 ,dicCode = "send_status")
    @ApiModelProperty(value = "发布状态（0未发布，1已发布）")
    @Dict(dicCode = "send_status")
    private java.lang.String sendStatus;

	/**发布时间*/
	@Excel(name = "发布时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "发布时间")
    private java.util.Date sendTime;

	/**是否置顶*/
    @Excel(name = "是否置顶（0，正常，1已删除）", width = 15,dicCode = "yn")
    @ApiModelProperty(value = "是否置顶（0，正常，1已删除）")
    @Dict(dicCode = "yn")
    private java.lang.String isTop;
    /**删除状态（0，正常，1已删除）*/
	@Excel(name = "删除状态（0，正常，1已删除）", width = 15)
    @ApiModelProperty(value = "删除状态（0，正常，1已删除）")
    private java.lang.String delFlag;

	/**摘要 系统消息时为判断是否解决 yn字典*/
	@Excel(name = "摘要", width = 15)
    @ApiModelProperty(value = "摘要")
    private java.lang.String msgAbstract;

	//------------------------------不展示字段-------------------------------
    /**发布人*/
    @Excel(name = "发布人", width = 15)
    @ApiModelProperty(value = "发布人")
    private java.lang.String sender;
    /**撤销时间 */
    //@Excel(name = "撤销时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "撤销时间")
    private java.util.Date cancelTime;
    /**创建人*/
    @ApiModelProperty(value = "创建人")
    private java.lang.String createBy;
    /**创建时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    private java.util.Date createTime;
    /**更新人*/
    @ApiModelProperty(value = "更新人")
    private java.lang.String updateBy;
    /**更新时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新时间")
    private java.util.Date updateTime;

	//------------------------------不需要字段-------------------------------
    /**通告对象类型（USER:指定用户，ALL:全体用户）   用不到 */
    //@Excel(name = "通告对象类型（USER:指定用户，ALL:全体用户）", width = 15)
    //@ApiModelProperty(value = "通告对象类型（USER:指定用户，ALL:全体用户）")
    private java.lang.String msgType;
}
